import GameConfig from "../../Script/GameConfig";

/** 跑马的新消息待处理事件 */
export const EVENT_KEY_PAOMA_MESSAGE_ADD: string = "event_key_paoma_message_add";

/** 跑马灯消息结构 */
export interface IPaoMaMsg {
	/** 消息内容 */
	msg: string,
	/** 消息来源游戏ID */
	gameID: number,
}


/** 跑马灯消息对象 */
export default class PaoMaMsgs {

	// 消息对象序列
	static msgAry: IPaoMaMsg[] = [];

	/**
	 * push back a message info and show it
	 * @param {string} text 消息文本内容
	 * @param {number} [id] 消息来源游戏ID，游戏跳转时使用；无值或0，作当前游戏处理
	 * @memberof Paoma
	 */
	static pushMsgInfoAndC(text: string, id?: number) {
		if (!text) return;
		text = text.trim();
		if (text.length > 0) {
			const data: IPaoMaMsg = {
				msg: text,
				gameID: id || yy.room.getGameID() || GameConfig.GameID
			};
			this.msgAry.push(data);
			// emit event
			let e = new yy.event.CustomEvent();
			e.eventID = EVENT_KEY_PAOMA_MESSAGE_ADD;
			yy.event.emit(yy.event.CustomEvent, e);
		}
	}

}
